Arquitectura x86-64

AMD Opteron, la primera CPU a introduir les extensions x86-64 l'abril de 2003.

x86-64 (també conegut com x64, x86_64, AMD64 i Intel 64) és una versió de 64 bits del conjunt d'instruccions x86, llançada per primera vegada el 1999. Va introduir dos nous modes de funcionament, el mode de 64 bits i el mode de compatibilitat, juntament amb un nou mode de paginació de 4 nivells.

El conjunt de cinc volums del manual del programador d'arquitectura x86-64, tal com va publicar i distribuir AMD el 2002.

Amb el mode de 64 bits i el nou mode de paginació, admet quantitats molt més grans de memòria virtual i memòria física del que era possible als seus predecessors de 32 bits, permetent als programes emmagatzemar quantitats més grans de dades a la memòria. x86-64 també amplia els registres de propòsit general a 64 bits i n'amplia el nombre de 8 (alguns dels quals tenien una funcionalitat limitada o fixa, per exemple, per a la gestió de la pila) a 16 (totalment general), i ofereix moltes altres millores. L'aritmètica de coma flotant és compatible amb instruccions obligatòries semblants a SSE2, i els registres d'estil x87/MMX no s'utilitzen generalment (però encara estan disponibles fins i tot en mode de 64 bits); en canvi, s'utilitza un conjunt de 16 registres vectorials, de 128 bits cadascun. (Cada registre pot emmagatzemar un o dos nombres de precisió doble o d'un a quatre nombres de precisió única, o diversos formats d'enters.) En el mode de 64 bits, les instruccions es modifiquen per admetre operands de 64 bits i el mode d'adreçament de 64 bits.[1]

El mode de compatibilitat definit a l'arquitectura permet executar aplicacions d'usuari de 16 i 32 bits sense modificar, coexistint amb aplicacions de 64 bits si el sistema operatiu de 64 bits les admet.[2] [4] Com que els conjunts d'instruccions x86 de 16 i 32 bits es mantenen implementats al maquinari sense cap emulació intervinguda, aquests executables més antics es poden executar amb poca o cap penalització de rendiment,[5] mentre que les aplicacions més noves o modificades poden aprofitar les noves característiques del disseny del processador per aconseguir millores de rendiment. A més, un processador que admet x86-64 encara s'encén en mode real per a una compatibilitat total amb el 8086, tal com han fet els processadors x86 que admeten el mode protegit des del 80286.[6]

L'especificació original, creada per AMD i llançada l'any 2000, ha estat implementada per AMD, Intel i VIA. La microarquitectura AMD K8, als processadors Opteron i Athlon 64, va ser la primera a implementar-la. Aquesta va ser la primera incorporació significativa a l'arquitectura x86 dissenyada per una empresa diferent d'Intel. Intel es va veure obligat a seguir el mateix i va introduir una família NetBurst modificada que era compatible amb el programari amb les especificacions d'AMD. VIA Technologies va introduir x86-64 a la seva arquitectura VIA Isaiah, amb el VIA Nano.[7]

  1. AMD (October 5, 1999). "AMD Discloses New Technologies At Microporcessor Forum". Nota de premsa.
  2. AMD Corporation. «Volume 2: System Programming» (en anglès). AMD64 Architecture Programmer's Manual. AMD Corporation, 01-12-2016. Arxivat de l'original el 13 juliol 2018. [Consulta: 25 març 2017].
  3. Raymond Chen. «If there is no 16-bit emulation layer in 64-bit Windows, how come certain 16-bit installers are allowed to run?», 31-10-2013. Arxivat de l'original el 14 juliol 2021. [Consulta: 14 juliol 2021].
  4. In practice, 64-bit operating systems generally do not support 16-bit applications, although modern versions of Microsoft Windows contain a limited workaround that effectively supports 16-bit InstallShield and Microsoft ACME installers by silently substituting them with 32-bit code.[3]
  5. IBM Corporation. «IBM WebSphere Application Server 64-bit Performance Demystified» (en anglès), 06-09-2007. Arxivat de l'original el 25 gener 2022. [Consulta: 9 abril 2010].
  6. AMD (August 10, 2000). "AMD Releases x86-64 Architectural Specification; Enables Market Driven Migration to 64-Bit Computing". Nota de premsa.
  7. «Memory Limits for Windows Releases» (en anglès). MSDN. Microsoft, 16-11-2013. Arxivat de l'original el 6 gener 2014. [Consulta: 20 gener 2014].

Developed by StudentB